Kali Linux 渗透测试:扫描漏洞
信息安全公益宣传,信息安全知识启蒙。
加微信群回复公众号:微信群;QQ群:16004488
加微信群或QQ群可免费索取:学习教程
教程列表见微信公众号底部菜单
一、使用 Nikto 扫描
Nikto 是个命令行工具,所以我们打开终端。
我们会扫描 Peruggia 漏洞应用,并导出结果到 HTML 报告:
nikto -h http://192.168.56.102/peruggia/ -o result.html
-h
选项告诉 Nikto 扫描哪个主机,-o
选项告诉在哪里存放输出,文件的扩展名决定了接受的格式。这里,我们使用.html
来获得 HTML 格式的结果报告。输出也可以以 CSV、TXT 或 XML 格式。
它需要一些时间来完成扫描。完成之后,我么可以打开result.html
文件:
工作原理:
这个秘籍中,我们使用 Nikto 来扫描应用并生成 HTML 报告。这个工具拥有一些更多的选项,用于执行特定扫描或生成特定输出格式。一些最实用的选项是:
-H
:这会显示 Nikto 的帮助。-config <file>
:在扫描中用自定义的配置文件。-update
:更新插件数据库。-Format <format>
:这定义了输出格式,可以为CSV、HTML、NBE(Nessus)、SQL、TXT 或 XML。例如 CSV、XML 和 NBE 的格式在我们打算将其用于其它工具的输入时非常实用。-evasion <techique>
:这使用一些编码技巧来帮助避免 Web 应用防火墙和入侵检测系统的检测。-list-plugins
:查看可用的测试插件。-Plugins <plugins>
:选择在扫描中使用哪个插件(默认为全部)。-port <port number>
:如果服务器使用非标准端口(80,443),我们可能会以这个选项来使用 Nikto。
二、使用 OWASP ZAP 扫描漏洞
OWASP ZAP 是我们已经在这本书中使用过的工具,用于不同的任务,并且在它的众多特性中,包含了自动化的漏洞扫描器。它的使用和报告生成会在这个秘籍中涉及。
准备:
在我们使用 OWASP ZAP 成功执行漏洞扫描之前,我们需要爬取站点:
1.打开 OWASP ZAP 并配置浏览器将其用作代理。
2.访问 192.168.56.102/peruggia/。
3.遵循第三章“使用 ZAP 的蜘蛛”中的指南。
操作步骤:
1.访问 OWASP ZAP 的Sites面板,并右击peruggia文件夹。
2.访问菜单中的Attack | Active Scan。
3.新的窗口会弹出。这里,我们知道我们的应用和服务器使用哪种技术,所以,访问Technology标签页,并只勾选MySQL、PostgreSQL和Linux,以及Apache。
这里我们可以配置我们的扫描器的Scope
(从哪里开始扫描、在什么上下文中,以及其它)、Input Vectors
(选项是否你打算测试 GET 和 POST 请求、协议头、Cookie和其它选项)、Custom Vectors
(向原始请求中添加特定的字符或单词作为攻击向量)、Technology
(要执行什么技术特定的测试)、以及Policy
(为特定测试选项配置参数)。
4.点击Start Scan。
5.Active Scan标签页会出现在面板顶部,并且所有请求都会出现在那里。当扫描完成时,我们可以在ALerts标签页中检查结果。
6.如果我们选项某个警告,我们可以查看生成的请求,以及从服务器获得的响应。这允许我们分析攻击并判断是否是真正的漏洞,或者是误报。我们也可以使用这个信息来模糊测试,在浏览器中重放这个请求,或者深入挖掘以利用。为了生成 HTML 报告,就像前一个工具那样,在主菜单中访问Report之后选择Generate HTML Report....。
7.新的对话框会询问文件名和位置。例如,设置zap_result. html并且在完成时打开文件:
工作原理:
OWASP ZAP 能够执行主动和被动漏洞扫描。被动扫描是 OWASP ZAP 在我们浏览过、发送数据和点击链接程中进行的非入侵测试。主动测试涉及对每个表单变量或请求值使用多种攻击字符串,以便检测服务器的响应是否带有我们叫做“脆弱行为”的东西。
OWASP ZAP 使用多种技术生成测试字串,它对于首次识别目标所使用的技术非常实用,以便优化我们的扫描并减少被检测到或导致服务崩溃的可能。
这个工具的另一个有趣特性是,我们可以产生于漏洞检测中的请求,而且它的相应响应在检测的时候会位于相同窗口中。这允许我们快读判断它是真正的漏洞还是误报,以及是否要开发我们的漏洞证明(POC)还是开始利用。
下面阅读原文,有啥 ?